/*
 * MIT License
 *
 * Copyright (c) 2023 OrdinaryRoad
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: douyin.proto

// Protobuf Java Version: 3.25.3
package tech.ordinaryroad.live.chat.client.codec.douyin.protobuf;

public interface UserOrBuilder extends
    // @@protoc_insertion_point(interface_extends:User)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <code>uint64 id = 1;</code>
   * @return The id.
   */
  long getId();

  /**
   * <code>uint64 shortId = 2;</code>
   * @return The shortId.
   */
  long getShortId();

  /**
   * <code>string nickName = 3;</code>
   * @return The nickName.
   */
  String getNickName();
  /**
   * <code>string nickName = 3;</code>
   * @return The bytes for nickName.
   */
  com.google.protobuf.ByteString
      getNickNameBytes();

  /**
   * <code>uint32 gender = 4;</code>
   * @return The gender.
   */
  int getGender();

  /**
   * <code>string Signature = 5;</code>
   * @return The signature.
   */
  String getSignature();
  /**
   * <code>string Signature = 5;</code>
   * @return The bytes for signature.
   */
  com.google.protobuf.ByteString
      getSignatureBytes();

  /**
   * <code>uint32 Level = 6;</code>
   * @return The level.
   */
  int getLevel();

  /**
   * <code>uint64 Birthday = 7;</code>
   * @return The birthday.
   */
  long getBirthday();

  /**
   * <code>string Telephone = 8;</code>
   * @return The telephone.
   */
  String getTelephone();
  /**
   * <code>string Telephone = 8;</code>
   * @return The bytes for telephone.
   */
  com.google.protobuf.ByteString
      getTelephoneBytes();

  /**
   * <code>.Image AvatarThumb = 9;</code>
   * @return Whether the avatarThumb field is set.
   */
  boolean hasAvatarThumb();
  /**
   * <code>.Image AvatarThumb = 9;</code>
   * @return The avatarThumb.
   */
  Image getAvatarThumb();
  /**
   * <code>.Image AvatarThumb = 9;</code>
   */
  ImageOrBuilder getAvatarThumbOrBuilder();

  /**
   * <code>.Image AvatarMedium = 10;</code>
   * @return Whether the avatarMedium field is set.
   */
  boolean hasAvatarMedium();
  /**
   * <code>.Image AvatarMedium = 10;</code>
   * @return The avatarMedium.
   */
  Image getAvatarMedium();
  /**
   * <code>.Image AvatarMedium = 10;</code>
   */
  ImageOrBuilder getAvatarMediumOrBuilder();

  /**
   * <code>.Image AvatarLarge = 11;</code>
   * @return Whether the avatarLarge field is set.
   */
  boolean hasAvatarLarge();
  /**
   * <code>.Image AvatarLarge = 11;</code>
   * @return The avatarLarge.
   */
  Image getAvatarLarge();
  /**
   * <code>.Image AvatarLarge = 11;</code>
   */
  ImageOrBuilder getAvatarLargeOrBuilder();

  /**
   * <code>bool Verified = 12;</code>
   * @return The verified.
   */
  boolean getVerified();

  /**
   * <code>uint32 Experience = 13;</code>
   * @return The experience.
   */
  int getExperience();

  /**
   * <code>string city = 14;</code>
   * @return The city.
   */
  String getCity();
  /**
   * <code>string city = 14;</code>
   * @return The bytes for city.
   */
  com.google.protobuf.ByteString
      getCityBytes();

  /**
   * <code>int32 Status = 15;</code>
   * @return The status.
   */
  int getStatus();

  /**
   * <code>uint64 CreateTime = 16;</code>
   * @return The createTime.
   */
  long getCreateTime();

  /**
   * <code>uint64 ModifyTime = 17;</code>
   * @return The modifyTime.
   */
  long getModifyTime();

  /**
   * <code>uint32 Secret = 18;</code>
   * @return The secret.
   */
  int getSecret();

  /**
   * <code>string ShareQrcodeUri = 19;</code>
   * @return The shareQrcodeUri.
   */
  String getShareQrcodeUri();
  /**
   * <code>string ShareQrcodeUri = 19;</code>
   * @return The bytes for shareQrcodeUri.
   */
  com.google.protobuf.ByteString
      getShareQrcodeUriBytes();

  /**
   * <code>uint32 IncomeSharePercent = 20;</code>
   * @return The incomeSharePercent.
   */
  int getIncomeSharePercent();

  /**
   * <code>repeated .Image BadgeImageList = 21;</code>
   */
  java.util.List<Image>
      getBadgeImageListList();
  /**
   * <code>repeated .Image BadgeImageList = 21;</code>
   */
  Image getBadgeImageList(int index);
  /**
   * <code>repeated .Image BadgeImageList = 21;</code>
   */
  int getBadgeImageListCount();
  /**
   * <code>repeated .Image BadgeImageList = 21;</code>
   */
  java.util.List<? extends ImageOrBuilder>
      getBadgeImageListOrBuilderList();
  /**
   * <code>repeated .Image BadgeImageList = 21;</code>
   */
  ImageOrBuilder getBadgeImageListOrBuilder(
      int index);

  /**
   * <code>.FollowInfo FollowInfo = 22;</code>
   * @return Whether the followInfo field is set.
   */
  boolean hasFollowInfo();
  /**
   * <code>.FollowInfo FollowInfo = 22;</code>
   * @return The followInfo.
   */
  FollowInfo getFollowInfo();
  /**
   * <code>.FollowInfo FollowInfo = 22;</code>
   */
  FollowInfoOrBuilder getFollowInfoOrBuilder();

  /**
   * <code>.PayGrade PayGrade = 23;</code>
   * @return Whether the payGrade field is set.
   */
  boolean hasPayGrade();
  /**
   * <code>.PayGrade PayGrade = 23;</code>
   * @return The payGrade.
   */
  PayGrade getPayGrade();
  /**
   * <code>.PayGrade PayGrade = 23;</code>
   */
  PayGradeOrBuilder getPayGradeOrBuilder();

  /**
   * <code>.FansClub FansClub = 24;</code>
   * @return Whether the fansClub field is set.
   */
  boolean hasFansClub();
  /**
   * <code>.FansClub FansClub = 24;</code>
   * @return The fansClub.
   */
  FansClub getFansClub();
  /**
   * <code>.FansClub FansClub = 24;</code>
   */
  FansClubOrBuilder getFansClubOrBuilder();

  /**
   * <pre>
   *  Border Border = 25;
   * </pre>
   *
   * <code>string SpecialId = 26;</code>
   * @return The specialId.
   */
  String getSpecialId();
  /**
   * <pre>
   *  Border Border = 25;
   * </pre>
   *
   * <code>string SpecialId = 26;</code>
   * @return The bytes for specialId.
   */
  com.google.protobuf.ByteString
      getSpecialIdBytes();

  /**
   * <code>.Image AvatarBorder = 27;</code>
   * @return Whether the avatarBorder field is set.
   */
  boolean hasAvatarBorder();
  /**
   * <code>.Image AvatarBorder = 27;</code>
   * @return The avatarBorder.
   */
  Image getAvatarBorder();
  /**
   * <code>.Image AvatarBorder = 27;</code>
   */
  ImageOrBuilder getAvatarBorderOrBuilder();

  /**
   * <code>.Image Medal = 28;</code>
   * @return Whether the medal field is set.
   */
  boolean hasMedal();
  /**
   * <code>.Image Medal = 28;</code>
   * @return The medal.
   */
  Image getMedal();
  /**
   * <code>.Image Medal = 28;</code>
   */
  ImageOrBuilder getMedalOrBuilder();

  /**
   * <code>repeated .Image RealTimeIconsList = 29;</code>
   */
  java.util.List<Image>
      getRealTimeIconsListList();
  /**
   * <code>repeated .Image RealTimeIconsList = 29;</code>
   */
  Image getRealTimeIconsList(int index);
  /**
   * <code>repeated .Image RealTimeIconsList = 29;</code>
   */
  int getRealTimeIconsListCount();
  /**
   * <code>repeated .Image RealTimeIconsList = 29;</code>
   */
  java.util.List<? extends ImageOrBuilder>
      getRealTimeIconsListOrBuilderList();
  /**
   * <code>repeated .Image RealTimeIconsList = 29;</code>
   */
  ImageOrBuilder getRealTimeIconsListOrBuilder(
      int index);

  /**
   * <code>string displayId = 38;</code>
   * @return The displayId.
   */
  String getDisplayId();
  /**
   * <code>string displayId = 38;</code>
   * @return The bytes for displayId.
   */
  com.google.protobuf.ByteString
      getDisplayIdBytes();

  /**
   * <code>string secUid = 46;</code>
   * @return The secUid.
   */
  String getSecUid();
  /**
   * <code>string secUid = 46;</code>
   * @return The bytes for secUid.
   */
  com.google.protobuf.ByteString
      getSecUidBytes();

  /**
   * <code>uint64 fanTicketCount = 1022;</code>
   * @return The fanTicketCount.
   */
  long getFanTicketCount();

  /**
   * <code>string idStr = 1028;</code>
   * @return The idStr.
   */
  String getIdStr();
  /**
   * <code>string idStr = 1028;</code>
   * @return The bytes for idStr.
   */
  com.google.protobuf.ByteString
      getIdStrBytes();

  /**
   * <code>uint32 ageRange = 1045;</code>
   * @return The ageRange.
   */
  int getAgeRange();
}
